Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## rdlc.hw
Class ModuleInstance_Standard.Message_Fixed

    java.lang.Object
      rdlc.hw.ModuleInstance_Standard.Message_Fixed

Direct Known Subclasses:
  ModuleInstance_Standard.Message_Variable, ModuleInstance_Standard.MessageSimple, ModuleInstance_Standard.MessageStruct_Fixed, ModuleInstance_Standard.MessageUnion_Fixed

Enclosing class:
  ModuleInstance_Standard

    protected abstract static class ModuleInstance_Standard.Message_Fixed

extends java.lang.Object

Abstract class which represents a fixed bitwidth message for the purpose of generating packing and unpacking logic.

Version:
  $Revision: 1.18 $
Author:
  Greg Gibeling

Field Summary
`protected Expression_Wire` | `dataWire` The data wires for the packing logic.
`protected ModuleInstance_Standard` | `instance` The module instance to which the logic is being added.
`protected java.lang.String` | `name` The name of this message field.
`protected int` | `width` The fixed bitwidth of this message.

Constructor Summary
`ModuleInstance_Standard.Message_Fixed(java.lang.String _name, ModuleInstance_Standard _instance, Message message)` Simple constructor.

Method Summary
`abstract void` | `generatePack(ModuleParameterGroup portParamGroup, ModuleWireGroup packWireGroup, int widthBits, int extraWidth)` Generate the packing logic for this message object.
`abstract void` | `generateUnpack(Expression source, ModuleWireGroup unpackWireGroup)` Generate the unpacking logic for this message object.
`Expression` | `getWidthExpr(int widthBits, int tagWidth)` Simple accessor.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### name

    protected java.lang.String name

  The name of this message field.

### dataWire

    protected Expression_Wire dataWire

  The data wires for the packing logic.

### instance

    protected ModuleInstance_Standard instance

  The module instance to which the logic is being added.

### width

    protected int width

  The fixed bitwidth of this message.

Constructor Detail

### ModuleInstance_Standard.Message_Fixed

    public ModuleInstance_Standard.Message_Fixed(java.lang.String _name,
                                                 ModuleInstance_Standard _instance,
                                                 Message message)

  Simple constructor.

  Parameters:
    `_name` - The name of this message or field.
    `_instance` - The module instance to which this object will belong.
    `message` - The message it will represent.

Method Detail

### generatePack

    public abstract void generatePack(ModuleParameterGroup portParamGroup,
                                      ModuleWireGroup packWireGroup,
                                      int widthBits,
                                      int extraWidth)

  Generate the packing logic for this message object.

  Parameters:
    `portParamGroup` - The port's parameter group.
    `packWireGroup` - The wire group for all intermediate wires.
    `widthBits` - The number of bits of width to carry.
    `extraWidth` - The additional width requested by the link.

### generateUnpack

    public abstract void generateUnpack(Expression source,
                                        ModuleWireGroup unpackWireGroup)

  Generate the unpacking logic for this message object.

  Parameters:
    `source` - The expression which gives the source data for this message.
    `unpackWireGroup` - The wire group for all intermediate wires.

### getWidthExpr

    public Expression getWidthExpr(int widthBits,
                                   int tagWidth)

  Simple accessor. Notice that this may in fact be a non-constant expression depending on the tags in union messages.

  Parameters:
    `widthBits` - The number of bits required to represent the width.
    `tagWidth` - The width of the tag.
  Returns:
    An expression which evaluates to the width of this message type in bits.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD